Towards Live Domain-Specific Languages From Text Differencing to Adapting Models at Runtime
نویسندگان
چکیده
Live programming is a style of development characterized by incremental change and immediate feedback. Instead of long edit-compile cycles, developers modify a running program by changing its source code, receiving immediate feedback as it instantly adapts in response. In this paper we propose an approach to bridge the gap between running programs and textual Domain-Specific Languages (DSLs). The first step of our approach consists of applying a novel model differencing algorithm, TMDIFF, to the textual DSL code. By leveraging ordinary text differencing and origin tracking, TMDIFF produces deltas defined in terms of the meta model of a language. In the second step of our approach the model deltas are applied at runtime to update a running system, without having to restart it. Since the model deltas are derived from the static source code of the program, they are unaware of any runtime state maintained during model execution. We therefore propose a generic, dynamic patch architecture, RMPATCH, which can be customized to cater for domain-specific state migration. We illustrate RMPATCH in a case study of a live programming environment for a simple DSL implemented in RASCAL for simultaneously defining and executing state machines.
منابع مشابه
Cultural Elements in the Translation of Children's Literature: Persian translation of Roald Dahl’s Matilda in focus
Translation can have long-term effects on all languages and cultures. It is not a mere linguistic act, but mostly a cultural act, since language is by nature one of the major carriers of cultural elements. Thus, the translator’s job is not just transferring the meaning of words and sentences from the source text to the target text. Culture-specific items often cause translation problems. Identi...
متن کاملEditorial Volume 5, Issue1
Applied Literature, however, does not have literature at its centre. Literature in this domain is a tool to solve problems and achieve goals. Using literature to teach and learn languages, the application of literature to language education, is a very handy example. Health Humanities (by Crawford, et al. and reviewed by A. Ramazani in our Journal's previous issue) comprises chapters on how lite...
متن کاملCultural Elements in the Translation of Children's Literature: Persian translation of Roald Dahl’s Matilda in focus
Translation can have long-term effects on all languages and cultures. It is not a mere linguistic act, but mostly a cultural act, since language is by nature one of the major carriers of cultural elements. Thus, the translator’s job is not just transferring the meaning of words and sentences from the source text to the target text. Culture-specific items often cause translation problems. Identi...
متن کاملTowards Dynamic Semantics for Synthesizing Interpreted DSMLs
Domain-specific languages (DSLs) provide developers with the ability to describe applications using language elements that directly represent concepts in the application problem domains. Unlike generalpurpose languages, domain concepts are embedded in the semantics of a DSL. In this chapter, the authors present an interpreted domain-specific modeling language (i-DSML) whose models are used to s...
متن کاملCreate and Play Your Pac-Man Game with the GEMOC Studio
Executable Domain-Specific Languages (DSLs) are used for defining the behaviors of systems. In particular, the operational semantics of such DSLs may define how conforming models react to stimuli from their environment. This commonly requires adapting the semantics to define both the possible domain-level stimuli, and their handling during the execution. However, manually adapting the semantics...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2017